package com.google.code.sip.ucenter.ws.dto;

import java.util.Date;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;

import com.google.code.sip.ucenter.ws.adapter.DateAdapter;

/**
 * 火秀账户日志实体类
 * 
 * @author Liuye
 * 
 */
@SuppressWarnings("serial")
@XmlRootElement(name = "huoshowAccountLog")
@XmlSeeAlso(BaseDto.class)
@XmlAccessorType(XmlAccessType.FIELD)
public class HuoshowAccountLogDto extends BaseDto {
	/**
	 * <消费类型> 进账
	 */
	public final static String TYPE_OUT = "out";

	/**
	 * <消费类型> 出账
	 */
	public final static String TYPE_IN = "in";

	/**
	 * 火秀帐户id
	 */
	private String huoshowAccountId;

	/**
	 * 操作员Id
	 */
	private String operatorId;

	/**
	 * 操作员登录名
	 */
	private String operatorLoginName;

	/**
	 * 创建日期
	 */
	@XmlJavaTypeAdapter(DateAdapter.class)
	private Date createdDate;

	/**
	 * 操作前的余额
	 */
	private long beforeBalance;

	/**
	 * 操作金额(秀币点数）
	 */
	private long amount;

	/**
	 * 操作前的余额
	 */
	private long afterBalance;

	/**
	 * 消费类型 进账 or 出账
	 */
	private String type;

	/**
	 * 业务类型
	 */
	private String action;

	/**
	 * 备注
	 */
	private String comment;

	public String getHuoshowAccountId() {
		return huoshowAccountId;
	}

	public void setHuoshowAccountId(String huoshowAccountId) {
		this.huoshowAccountId = huoshowAccountId;
	}

	public String getOperatorId() {
		return operatorId;
	}

	public void setOperatorId(String userId) {
		this.operatorId = userId;
	}

	public String getOperatorLoginName() {
		return operatorLoginName;
	}

	public void setOperatorLoginName(String operatorLoginName) {
		this.operatorLoginName = operatorLoginName;
	}

	public long getAmount() {
		return amount;
	}

	public void setAmount(long amount) {
		this.amount = amount;
	}

	public long getBeforeBalance() {
		return beforeBalance;
	}

	public void setBeforeBalance(long beforeBalance) {
		this.beforeBalance = beforeBalance;
	}

	public long getAfterBalance() {
		return afterBalance;
	}

	public void setAfterBalance(long afterBalance) {
		this.afterBalance = afterBalance;
	}

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	public String getAction() {
		return action;
	}

	public void setAction(String action) {
		this.action = action;
	}

	public String getComment() {
		return comment;
	}

	public void setComment(String comment) {
		this.comment = comment;
	}

	/**
	 * @return the createdDate
	 */
	public Date getCreatedDate() {
		return createdDate;
	}

	/**
	 * @param createdDate
	 *            the createdDate to set
	 */
	public void setCreatedDate(Date createdDate) {
		this.createdDate = createdDate;
	}
}
